\usemodule[zhfonts]
\defineframed
  [SnailBox]
  [frame=off, width=6cm, autowidth=force,
    align={middle, lohi, broad}, offset=overlay]
  
\startMPpage
input snail.mp;

Node a, b, c, d, e, f, g;
a := io("元文档") withcolor (0, .4, 0);
b := io("文献数据库");
c := io("模板");
d := other("nar", fullsquare xysized (2cm, 1cm));
e := io("\SnailBox{含文献引用的\\元文档}") withcolor (0, .4, 0);
f := other("排版引擎", like d scaled 1.5);
g := io("格式化文档") withcolor (0, .4, 0);

as_planet(a, d, "top"); as_planet(b, d, "left"); as_planet(c, d, "bottom");
as_star(e, d, "right"); as_star(f, e, "bottom"); as_planet(g, f, "right");

draw_each a, b, c, d, e, f, g;
flow_each a => d, b => d, c => d, d => e, e => f, f => g;
\stopMPpage
